Some user agents (UAs), such as mobile telecommunications devices, can collect presence information associated with the users of the user agents. The presence information might include the user's location, the user's availability, the user's willingness to communicate, the user's willingness to use a particular service or communication method, the user's state of mind, activities the user is currently engaged in, applications currently executing on the user's UA, and similar data that relates to the current state of the user and/or the UA. An entity that has presence information associated with it, such as a human user of a UA, can be referred to as a presentity. A presentity might also be a non-human entity, such as an application executing on a UA. An entity that provides presence information on behalf of one or more presentities can be referred to as a presence source. For example, a UA that provides presence information associated with its user could be a presence source. When a presence source is associated with only one presentity, the presence source and the presentity could be considered equivalent.
A presence source that has collected presence information about a presentity might transmit the presence information to an entity that can be referred to as a presence server. The presence server might then provide the presence information to an entity that wishes to consume the presence information. This entity can be referred to as a watcher. As an example, if a presentity “Bob” has consented to allow other users to have access to information about his current location, Bob's UA might transmit his location information to a presence server. If a watcher “Alice” wished to learn Bob's current location, Alice's UA might submit an appropriate request to the presence server, and the presence server might send presence information about Bob to Alice's UA. Alice's UA might then process the presence information to determine Bob's location.
As used herein, the term “user agent” or “UA” might in some cases refer to a mobile device such as a mobile telephone, a personal digital assistant, a handheld or laptop computer, or a similar device that has telecommunications capabilities. In other cases, the term “UA” might refer to devices that have similar capabilities but that are not transportable, such as fixed line telephones, desktop computers, set-top boxes, or network nodes. The term “UA” can also refer to any hardware or software component that can terminate a communication session, such as a Session Initiation Protocol (SIP) session. Also, the terms “user agent”, “UA”, “user equipment”, “UE”, and “node” might be used synonymously herein.